package Negocio;

import Datos.DBAutos;
import Datos.DBClientes;
import Datos.DBVendedor;
import Datos.DBVentas;
import Entidades.Autos;
import Entidades.Cliente;
import Entidades.Vendedor;
import Entidades.Ventas;
import Interfaces.IVentas;
import java.util.ArrayList;
import javax.swing.DefaultComboBoxModel;
import javax.swing.table.DefaultTableModel;

public class DAOVentas implements IVentas {

    DBVentas a = new DBVentas();
    DBAutos h=new DBAutos();
    DBVendedor b=new DBVendedor();
    DBClientes c=new DBClientes();
    public DefaultTableModel modelo = new DefaultTableModel();
    private ArrayList<Ventas> al=a.ListaVentas();
    private int i;

    @Override
    public boolean IngresaVentas(Ventas nodo) {
       return a.IngresaVentas(nodo);
    }

    @Override
    public boolean ModificaVentas(Ventas nodo) {
        return a.ModificaVentas(nodo);
    }

    @Override
    public boolean EliminaVentas(int IDVentas) {
        return a.EliminaVentas(IDVentas);
    }

    @Override
    public ArrayList<Ventas> ListaVentas() {
        return a.ListaVentas();
    }

    @Override
    public DefaultTableModel ModeloVentas() {
        modelo = new DefaultTableModel();
        modelo = new javax.swing.table.DefaultTableModel(
                new Object[][]{},
                new String[]{
                    "Id","Nro de Unidad","ID de vendedor", "ID de cliente","Fecha Venta","Importe Venta", "Comision"
                }){boolean[] canEdit = new boolean [] {
                false, true, true, true, true, true, true
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }};
        int i = 0;
        while (i < al.size()) {
         String id=Integer.toString(al.get(i).getIDVenta());
         String NroUnidad=Integer.toString(al.get(i).getNroUnidad());
         String idvendedor=Integer.toString(al.get(i).getIDVendedor());
         String idcli=Integer.toString(al.get(i).getIDCliente());
         String importe=Integer.toString(al.get(i).getImporteVenta());
         String comision=Integer.toString(al.get(i).getComision());
            String[] nombre2 = {id,NroUnidad,idvendedor,idcli,al.get(i).getFechaVenta(),importe,comision};
         System.out.println();
            modelo.addRow(nombre2);
            i++;
        }
        
        return modelo;
    }

    public DefaultComboBoxModel cargounidad() {
        int x = 0;
        ArrayList<Autos> j = h.ListaAutos();
        String[] datos = new String[j.size()];
        while (x < j.size()) {

            datos[x] = Integer.toString(j.get(x).getNroUnidad());
            x++;
        }

        DefaultComboBoxModel model = new DefaultComboBoxModel(datos);

        return model;
    }
    public DefaultComboBoxModel cargovendedor() {
        int x = 0;
        ArrayList<Vendedor> j = b.ListaVendedor();
        String[] datos = new String[j.size()];
        while (x < j.size()) {

            datos[x] = Integer.toString(j.get(x).getIDVendedor());
            x++;
        }

        DefaultComboBoxModel model = new DefaultComboBoxModel(datos);

        return model;
    }
    public DefaultComboBoxModel cargocliente() {
        int x = 0;
        ArrayList<Cliente> j = c.ListaClientes();
        String[] datos = new String[j.size()];
        while (x < j.size()) {

            datos[x] = Integer.toString(j.get(x).getIDCliente());
            x++;
        }

        DefaultComboBoxModel model = new DefaultComboBoxModel(datos);

        return model;
    }

       }

    
